home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / AIncludes / SocketServices.a < prev    next >
Text File  |  1996-05-01  |  25KB  |  796 lines

  1. ;
  2. ;    File:        SocketServices.a
  3. ;
  4. ;    Contains:    This file contains constants and data structures that
  5. ;
  6. ;    Version:    Technology:    System 7.5
  7. ;                Release:    Universal Interfaces 3.0d3 on Copland DR1
  8. ;
  9. ;    Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10. ;
  11. ;    Bugs?:        If you find a problem with this file, send the file and version
  12. ;                information (from above) and the problem description to:
  13. ;
  14. ;                    Internet:    apple.bugs@applelink.apple.com
  15. ;                    AppleLink:    APPLE.BUGS
  16. ;
  17. ;
  18.     IF &TYPE('__SOCKETSERVICES__') = 'UNDEFINED' THEN
  19. __SOCKETSERVICES__ SET 1
  20.  
  21.     IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
  22.     include 'Types.a'
  23.     ENDIF
  24.     IF &TYPE('__MIXEDMODE__') = 'UNDEFINED' THEN
  25.     include 'MixedMode.a'
  26.     ENDIF
  27.     IF FOR_SYSTEM7_ONLY THEN
  28. ;
  29. ;///////////////////////////////////////////////////////////////////////////////////////
  30. ;    TypeDefs for the Socket Services function codes
  31. ;
  32. ; typedef Byte                             SS_BYTE
  33.  
  34. ; typedef Byte                             SS_FLAGS8
  35.  
  36. ; typedef Byte                             SS_IRQ
  37.  
  38. ; typedef Byte                             SS_PWRLEVEL
  39.  
  40. ; typedef UInt16                         SS_ADAPTER
  41.  
  42. ; typedef UInt16                         SS_BCD
  43.  
  44. ; typedef UInt16                         SS_COUNT
  45.  
  46. ; typedef UInt16                         SS_EDC
  47.  
  48. ; typedef UInt16                         SS_FLAGS16
  49.  
  50. ; typedef UInt16                         SS_PAGE
  51.  
  52. ; typedef UInt16                         SS_PWRINDEX
  53.  
  54. ; typedef UInt16                         SS_SIGNATURE
  55.  
  56. ; typedef UInt16                         SS_SKTBITS
  57.  
  58. ; typedef UInt16                         SS_SOCKET
  59.  
  60. ; typedef UInt16                         SS_SPEED
  61.  
  62. ; typedef UInt16                         SS_WINDOW
  63.  
  64. ; typedef UInt16                         SS_WORD
  65.  
  66. ; typedef UInt32                         SS_BASE
  67.  
  68. ; typedef UInt32                         SS_FLAGS32
  69.  
  70. ; typedef UInt32                         SS_OFFSET
  71.  
  72. ; typedef UInt32                         SS_SIZE
  73.  
  74. ; typedef Ptr                             SS_PTR
  75.  
  76. ; typedef OSErr                         SS_RETCODE
  77.  
  78. SS_SCHARTBL                RECORD 0
  79. sktCaps                     ds.w    1                ; offset: $0 (0)        ;     SS_FLAGS16
  80. activeHigh                 ds.l    1                ; offset: $2 (2)        ;     SS_FLAGS32
  81. activeLow                 ds.l    1                ; offset: $6 (6)        ;     SS_FLAGS32
  82. sizeof                     EQU *                    ; size:   $A (10)
  83.                         ENDR
  84. SS_SISTRUCT                RECORD 0
  85. bufferLength             ds.w    1                ; offset: $0 (0)        ;     SS_WORD
  86. dataLength                 ds.w    1                ; offset: $2 (2)        ;     SS_WORD
  87. charTable                 ds        SS_SCHARTBL        ; offset: $4 (4)        ;     SS_FLAGS16
  88. sizeof                     EQU *                    ; size:   $E (14)
  89.                         ENDR
  90.  
  91. STR_SIZE                        EQU        24
  92. ;  minimum string length
  93. SS_VISTRUCT                RECORD 0
  94. bufferLength             ds.w    1                ; offset: $0 (0)        ;     SS_WORD
  95. dataLength                 ds.w    1                ; offset: $2 (2)        ;     SS_WORD
  96. szImplementor             ds.b    1                ; offset: $4 (4) <-- really an array of length one ;     SS_WORD
  97. padding                     ds.b    1                ; offset: $5 (5) <-- really an array of length one ;     
  98. sizeof                     EQU *                    ; size:   $6 (6)
  99.                         ENDR
  100. SS_ACHARTBL                RECORD 0
  101. adpCaps                     ds.w    1                ; offset: $0 (0)        ;     SS_FLAGS16
  102. activeHigh                 ds.l    1                ; offset: $2 (2)        ;     SS_FLAGS32
  103. activeLow                 ds.l    1                ; offset: $6 (6)        ;     SS_FLAGS32
  104. sizeof                     EQU *                    ; size:   $A (10)
  105.                         ENDR
  106. SS_PWRENTRY                RECORD 0
  107. powerLevel                 ds.b    1                ; offset: $0 (0)        ;     SS_PWRLEVEL
  108. validSignals             ds.b    1                ; offset: $1 (1)        ;     SS_FLAGS8
  109. sizeof                     EQU *                    ; size:   $2 (2)
  110.                         ENDR
  111. SS_AISTRUCT                RECORD 0
  112. bufferLength             ds.w    1                ; offset: $0 (0)        ;     SS_WORD
  113. dataLength                 ds.w    1                ; offset: $2 (2)        ;     SS_WORD
  114. charTable                 ds        SS_ACHARTBL        ; offset: $4 (4)
  115. numPwrEntries             ds.w    1                ; offset: $E (14)        ;     SS_WORD
  116. pwrEntryPtr                 ds.l    1                ; offset: $10 (16)
  117. sizeof                     EQU *                    ; size:   $14 (20)
  118.                         ENDR
  119. SS_MEMWINTBL            RECORD 0
  120. memWndCaps                 ds.w    1                ; offset: $0 (0)        ;     SS_FLAGS16
  121. firstByte                 ds.l    1                ; offset: $2 (2)        ;     SS_BASE
  122. lastByte                 ds.l    1                ; offset: $6 (6)        ;     SS_BASE
  123. minSize                     ds.l    1                ; offset: $A (10)        ;     SS_SIZE
  124. maxSize                     ds.l    1                ; offset: $E (14)        ;     SS_SIZE
  125. reqGran                     ds.l    1                ; offset: $12 (18)        ;     SS_SIZE
  126. reqBase                     ds.l    1                ; offset: $16 (22)        ;     SS_SIZE
  127. reqOffset                 ds.l    1                ; offset: $1A (26)        ;     SS_SIZE
  128. slowest                     ds.w    1                ; offset: $1E (30)        ;     SS_SPEED
  129. fastest                     ds.w    1                ; offset: $20 (32)        ;     SS_SPEED
  130. sizeof                     EQU *                    ; size:   $22 (34)
  131.                         ENDR
  132. SS_IOWINTBL                RECORD 0
  133. ioWndCaps                 ds.w    1                ; offset: $0 (0)        ;     SS_FLAGS16
  134. firstByte                 ds.l    1                ; offset: $2 (2)        ;     SS_BASE
  135. lastByte                 ds.l    1                ; offset: $6 (6)        ;     SS_BASE
  136. minSize                     ds.l    1                ; offset: $A (10)        ;     SS_SIZE
  137. maxSize                     ds.l    1                ; offset: $E (14)        ;     SS_SIZE
  138. reqGran                     ds.l    1                ; offset: $12 (18)        ;     SS_SIZE
  139. addrLines                 ds.w    1                ; offset: $16 (22)        ;     SS_COUNT
  140. eisaSlot                 ds.b    1                ; offset: $18 (24)        ;     SS_FLAGS8
  141. padding                     ds.b    1                ; offset: $19 (25) <-- really an array of length one ;     
  142. sizeof                     EQU *                    ; size:   $1A (26)
  143.                         ENDR
  144. SS_WISTRUCT                RECORD 0
  145. bufferLength             ds.w    1                ; offset: $0 (0)        ;     SS_WORD
  146. dataLength                 ds.w    1                ; offset: $2 (2)        ;     SS_WORD
  147. numTblEntries             ds.w    1                ; offset: $4 (4)        ;     SS_WORD
  148. memWinTbl                 ds        SS_MEMWINTBL    ; offset: $6 (6)
  149. ioWinTbl                 ds        SS_IOWINTBL        ; offset: $28 (40)
  150. sizeof                     EQU *                    ; size:   $42 (66)
  151.                         ENDR
  152. ;
  153. ;------------------------------------------------------------------------------------------------------------------------------------------------
  154. ;    function selectors passed to Socket Service entry point
  155. ;------------------------------------------------------------------------------------------------------------------------------------------------
  156. ;
  157.  
  158. fnSSGetAdapterCount                EQU        $80
  159. fnSSUnsupported81                EQU        $81
  160. fnSSUnsupported82                EQU        $82
  161. fnSSGetSSInfo                    EQU        $83
  162. fnSSInquireAdapter                EQU        $84
  163. fnSSGetAdapter                    EQU        $85
  164. fnSSSetAdapter                    EQU        $86
  165. fnSSInquireWindow                EQU        $87
  166. fnSSGetWindow                    EQU        $88
  167. fnSSSetWindow                    EQU        $89
  168. fnSSGetPage                        EQU        $8A
  169. fnSSSetPage                        EQU        $8B
  170. fnSSInquireSocket                EQU        $8C
  171. fnSSGetSocket                    EQU        $8D
  172. fnSSSetSocket                    EQU        $8E
  173. fnSSGetStatus                    EQU        $8F
  174. fnSSResetSocket                    EQU        $90
  175. fnSSUnsupported91                EQU        $91
  176. fnSSUnsupported92                EQU        $92
  177. fnSSUnsupported93                EQU        $93
  178. fnSSUnsupported94                EQU        $94
  179. fnSSInquireEDC                    EQU        $95
  180. fnSSGetEDC                        EQU        $96
  181. fnSSSetEDC                        EQU        $97
  182. fnSSStartEDC                    EQU        $98
  183. fnSSPauseEDC                    EQU        $99
  184. fnSSResumeEDC                    EQU        $9A
  185. fnSSStopEDC                        EQU        $9B
  186. fnSSReadEDC                        EQU        $9C
  187. fnSSGetVendorInfo                EQU        $9D
  188. fnSSAcknowledgeInterrupt        EQU        $9E
  189. fnSSGetSetPriorHandler            EQU        $9F
  190. fnSSGetSetSSAddr                EQU        $A0
  191. fnSSGetAccessOffsets            EQU        $A1
  192. fnSSUnsupportedA2                EQU        $A2
  193. fnSSUnsupportedA3                EQU        $A3
  194. fnSSUnsupportedA4                EQU        $A4
  195. fnSSUnsupportedA5                EQU        $A5
  196. fnSSUnsupportedA6                EQU        $A6
  197. fnSSUnsupportedA7                EQU        $A7
  198. fnSSUnsupportedA8                EQU        $A8
  199. fnSSUnsupportedA9                EQU        $A9
  200. fnSSUnsupportedAA                EQU        $AA
  201. fnSSUnsupportedAB                EQU        $AB
  202. fnSSUnsupportedAC                EQU        $AC
  203. fnSSUnsupportedAD                EQU        $AD
  204. fnSSVendorSpecific                EQU        $AE
  205. ;     SSVendorSpecificPB.function values
  206.  
  207. fnVSReserved                    EQU        $00
  208. fnVSGetSocketLocationIcon        EQU        $01
  209. fnVSGetSocketLocationText        EQU        $02
  210. fnVSDoSocketLocalization        EQU        $03
  211. fnVSAppleSocketCapabilities        EQU        $04
  212. fnVSSleepWakeNotification        EQU        $05
  213. ;
  214. ;------------------------------------------------------------------------------------------------------------------------------------------------
  215. ;    defines for the Socket Services function codes
  216. ;------------------------------------------------------------------------------------------------------------------------------------------------
  217. ;
  218.  
  219. AC_IND                            EQU        1                    ; adapter characteristics
  220. AC_PWR                            EQU        2
  221. AC_DBW                            EQU        4
  222.  
  223. AS_POWERDOWN                    EQU        1
  224. AS_MAINTAIN                        EQU        2
  225.  
  226. EC_UNI                            EQU        1
  227. EC_BI                            EQU        2
  228. EC_REGISTER                        EQU        4
  229. EC_MEMORY                        EQU        8
  230. EC_PAUSABLE                        EQU        16
  231. EC_WRITE                        EQU        16
  232.  
  233. ET_CHECK8                        EQU        1
  234. ET_SDLC16                        EQU        2
  235.  
  236. IF_MEMORY                        EQU        1
  237. IF_IO                            EQU        2
  238.  
  239. IRQ_HIGH                        EQU        64
  240. IRQ_ENABLE                        EQU        128
  241.  
  242. IRQ_MEMORY                        EQU        4
  243. IRQ_IO                            EQU        4
  244.  
  245. PS_ATTRIBUTE                    EQU        $01
  246. PS_ENABLED                        EQU        $02
  247. PS_WP                            EQU        $04
  248.  
  249. PWR_VCC                            EQU        128                    ; Power pins in PwrEntry elements
  250. PWR_VPP1                        EQU        64
  251. PWR_VPP2                        EQU        32
  252.  
  253. SBM_WP                            EQU        1
  254. SBM_LOCKED                        EQU        2
  255. SBM_EJECT                        EQU        4
  256. SBM_INSERT                        EQU        8
  257. SBM_BVD1                        EQU        16
  258. SBM_BVD2                        EQU        32
  259. SBM_RDYBSY                        EQU        64
  260. SBM_CD                            EQU        128
  261.  
  262. SBM_LOCK                        EQU        16
  263. SBM_BATT                        EQU        32
  264. SBM_BUSY                        EQU        64
  265. SBM_XIP                            EQU        128
  266. ;  Vendor Specific Apple Socket Capabilities 
  267.  
  268. SBM_SLEEP_PWR                    EQU        1
  269.  
  270. WC_COMMON                        EQU        1
  271. WC_IO                            EQU        2
  272. WC_ATTRIBUTE                    EQU        4
  273. WC_TYPE_MASK                    EQU        7
  274. WC_WAIT                            EQU        128
  275.  
  276. WC_BASE                            EQU        1
  277. WC_SIZE                            EQU        2
  278. WC_WENABLE                        EQU        4
  279. WC_8BIT                            EQU        8
  280. WC_16BIT                        EQU        16
  281. WC_BALIGN                        EQU        32
  282. WC_POW2                            EQU        64
  283. WC_CALIGN                        EQU        128
  284. WC_PAVAIL                        EQU        256
  285. WC_PSHARED                        EQU        512
  286. WC_PENABLE                        EQU        1024
  287. WC_WP                            EQU        2048
  288.  
  289. WC_INPACK                        EQU        128
  290. WC_EISA                            EQU        256
  291. WC_CENABLE                        EQU        512
  292.  
  293. WS_IO                            EQU        1
  294. WS_ENABLED                        EQU        2
  295. WS_16BIT                        EQU        4
  296.  
  297. WS_PAGED                        EQU        8
  298. WS_EISA                            EQU        16
  299. WS_CENABLE                        EQU        32
  300. WS_SWAP_LITTLE_TO_BIG_ENDIAN    EQU        64
  301.  
  302. SS_SIG_VALUE                    EQU        $5353                ; 'SS'
  303.  
  304. SS_CMPL_1_00                    EQU        $0100                ; compliant with rev 1.0 of SS standard
  305. SS_CMPL_1_01                    EQU        $0101                ; compliant with rev 1.01 of SS standard
  306. SS_CMPL_2_00                    EQU        $0200                ; compliant with rev 2.0 of SS standard
  307. SS_CMPL_2_10                    EQU        $0210                ; compliant with rev 2.1 of SS standard
  308. ;
  309. ;------------------------------------------------------------------------------------------------------------------------------------------------
  310. ;    Universal ProcPtr for Socket Service entry point
  311. ;------------------------------------------------------------------------------------------------------------------------------------------------
  312. ;
  313. ;
  314. ;------------------------------------------------------------------------------------------------------------------------------------------------
  315. ;    Card Services calls used by a Socket Service
  316. ;------------------------------------------------------------------------------------------------------------------------------------------------
  317. ;
  318. CSEventEntryPB            RECORD 0
  319. ssHandlerID                 ds.l    1                ; offset: $0 (0)
  320. adapter                     ds.w    1                ; offset: $4 (4)
  321. socket                     ds.w    1                ; offset: $6 (6)
  322. message                     ds.w    1                ; offset: $8 (8)
  323. intrpBits                 ds.b    1                ; offset: $A (10)
  324. padding                     ds.b    1                ; offset: $B (11)
  325. sizeof                     EQU *                    ; size:   $C (12)
  326.                         ENDR
  327. ; ------------        AddSocketServices        ------------                            
  328. AddSocketServicesPB        RECORD 0
  329. ssEntry                     ds.l    1                ; offset: $0 (0)        ;  -> given to CS for its use
  330. csEntry                     ds.l    1                ; offset: $4 (4)        ;  <- taken from CS so we know where to enter
  331. dataPtr                     ds.l    1                ; offset: $8 (8)
  332. attributes                 ds.l    1                ; offset: $C (12)
  333. numAdapters                 ds.w    1                ; offset: $10 (16)
  334. numSockets                 ds.w    1                ; offset: $12 (18)
  335. sizeof                     EQU *                    ; size:   $14 (20)
  336.                         ENDR
  337. ; ------------         ReplaceSocketServices    ------------                            
  338. ReplaceSocketServicesPB    RECORD 0
  339. ssEntry                     ds.l    1                ; offset: $0 (0)
  340. oldSSEntry                 ds.l    1                ; offset: $4 (4)
  341. dataPtr                     ds.l    1                ; offset: $8 (8)
  342. socket                     ds.w    1                ; offset: $C (12)
  343. numSockets                 ds.w    1                ; offset: $E (14)
  344. attributes                 ds.w    1                ; offset: $10 (16)
  345. sizeof                     EQU *                    ; size:   $12 (18)
  346.                         ENDR
  347. ;
  348. ; pascal OSErr CSAddSocketServices(AddSocketServicesPB *pb)
  349. ;
  350.     IF ¨ GENERATINGCFM THEN
  351.         Macro
  352.         _CSAddSocketServices
  353.             moveq               #80,D0
  354.             dc.w                $AAF0
  355.         EndM
  356.     ELSE
  357.         IMPORT_CFM_FUNCTION CSAddSocketServices
  358.     ENDIF
  359.  
  360. ;
  361. ; pascal OSErr CSReplaceSocketServices(ReplaceSocketServicesPB *pb)
  362. ;
  363.     IF ¨ GENERATINGCFM THEN
  364.         Macro
  365.         _CSReplaceSocketServices
  366.             moveq               #81,D0
  367.             dc.w                $AAF0
  368.         EndM
  369.     ELSE
  370.         IMPORT_CFM_FUNCTION CSReplaceSocketServices
  371.     ENDIF
  372.  
  373. ;
  374. ;------------------------------------------------------------------------------------------------------------------------------------------------
  375. ;    parameter blocks for each Socket Service function
  376. ;------------------------------------------------------------------------------------------------------------------------------------------------
  377. ;
  378. SSAcknowledgeInterruptPB RECORD 0
  379. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  380. sockets                     ds.w    1                ; offset: $2 (2)        ;     SS_SKTBITS
  381. sizeof                     EQU *                    ; size:   $4 (4)
  382.                         ENDR
  383. SSGetAccessOffsetsPB    RECORD 0
  384. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  385. mode                     ds.b    1                ; offset: $2 (2)        ;     SS_BYTE
  386. reserved                 ds.b    1                ; offset: $3 (3)        ;     padding
  387. count                     ds.w    1                ; offset: $4 (4)        ;     SS_COUNT
  388. buffer                     ds.l    1                ; offset: $6 (6)        ;     SS_PTR
  389. numAvail                 ds.w    1                ; offset: $A (10)        ;     SS_COUNT
  390. sizeof                     EQU *                    ; size:   $C (12)
  391.                         ENDR
  392. SSGetAdapterCountPB        RECORD 0
  393. totalAdapters             ds.w    1                ; offset: $0 (0)        ;     SS_COUNT
  394. sig                         ds.w    1                ; offset: $2 (2)        ;     SS_SIGNATURE
  395. sizeof                     EQU *                    ; size:   $4 (4)
  396.                         ENDR
  397. SSGetSetAdapterPB        RECORD 0
  398. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  399. state                     ds.b    1                ; offset: $2 (2)        ;     SS_FLAGS8
  400. irqStatus                 ds.b    1                ; offset: $3 (3)        ;     SS_IRQ
  401. sizeof                     EQU *                    ; size:   $4 (4)
  402.                         ENDR
  403. SSGetSetEDCPB            RECORD 0
  404. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  405. edc                         ds.w    1                ; offset: $2 (2)        ;     SS_EDC
  406. socket                     ds.w    1                ; offset: $4 (4)        ;     SS_SOCKET
  407. state                     ds.b    1                ; offset: $6 (6)        ;     SS_FLAGS8
  408. edcType                     ds.b    1                ; offset: $7 (7)        ;     SS_FLAGS8
  409. sizeof                     EQU *                    ; size:   $8 (8)
  410.                         ENDR
  411. SSGetSetPagePB            RECORD 0
  412. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  413. window                     ds.w    1                ; offset: $2 (2)        ;     SS_WINDOW
  414. page                     ds.w    1                ; offset: $4 (4)        ;     SS_PAGE
  415. state                     ds.b    1                ; offset: $6 (6)        ;     SS_FLAGS8
  416. reserved                 ds.b    1                ; offset: $7 (7)        ;     padding
  417. offset                     ds.l    1                ; offset: $8 (8)        ;     SS_OFFSET
  418. sizeof                     EQU *                    ; size:   $C (12)
  419.                         ENDR
  420. SSGetSetPriorHandlerPB    RECORD 0
  421. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  422. mode                     ds.b    1                ; offset: $2 (2)        ;     SS_FLAGS8
  423. reserved                 ds.b    1                ; offset: $3 (3)        ;     padding
  424. handler                     ds.l    1                ; offset: $4 (4)        ;     SS_PTR
  425. sizeof                     EQU *                    ; size:   $8 (8)
  426.                         ENDR
  427. SSGetSetSocketPB        RECORD 0
  428. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  429. socket                     ds.w    1                ; offset: $2 (2)        ;     SS_SOCKET
  430. vccIndex                 ds.w    1                ; offset: $4 (4)        ;     SS_PWRINDEX
  431. vpp1Index                 ds.w    1                ; offset: $6 (6)        ;     SS_PWRINDEX
  432. vpp2Index                 ds.w    1                ; offset: $8 (8)        ;     SS_PWRINDEX
  433. scIntMask                 ds.b    1                ; offset: $A (10)        ;     SS_FLAGS8
  434. state                     ds.b    1                ; offset: $B (11)        ;     SS_FLAGS8
  435. ctlInd                     ds.b    1                ; offset: $C (12)        ;     SS_FLAGS8
  436. ireqRouting                 ds.b    1                ; offset: $D (13)        ;     SS_IRQ
  437. ifType                     ds.b    1                ; offset: $E (14)        ;     SS_FLAGS8
  438. padding                     ds.b    1                ; offset: $F (15) <-- really an array of length one ;     
  439. sizeof                     EQU *                    ; size:   $10 (16)
  440.                         ENDR
  441. SSGetSetSSAddrPB        RECORD 0
  442. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  443. mode                     ds.b    1                ; offset: $2 (2)        ;     SS_BYTE
  444. subfunc                     ds.b    1                ; offset: $3 (3)        ;     SS_BYTE
  445. numAddData                 ds.w    1                ; offset: $4 (4)        ;     SS_COUNT
  446. buffer                     ds.l    1                ; offset: $6 (6)        ;     SS_PTR
  447. sizeof                     EQU *                    ; size:   $A (10)
  448.                         ENDR
  449. SSGetSetWindowPB        RECORD 0
  450. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  451. window                     ds.w    1                ; offset: $2 (2)        ;     SS_WINDOW
  452. socket                     ds.w    1                ; offset: $4 (4)        ;     SS_SOCKET
  453. size                     ds.l    1                ; offset: $6 (6)        ;     SS_SIZE
  454. state                     ds.b    1                ; offset: $A (10)        ;     SS_FLAGS8
  455. reserved                 ds.b    1                ; offset: $B (11)        ;     padding
  456. speed                     ds.w    1                ; offset: $C (12)        ;     SS_SPEED
  457. base                     ds.l    1                ; offset: $E (14)        ;     SS_BASE
  458. sizeof                     EQU *                    ; size:   $12 (18)
  459.                         ENDR
  460. SSGetSSInfoPB            RECORD 0
  461. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  462. compliance                 ds.w    1                ; offset: $2 (2)        ;     SS_BCD
  463. numAdapters                 ds.w    1                ; offset: $4 (4)        ;     SS_COUNT
  464. firstAdapter             ds.w    1                ; offset: $6 (6)        ;     SS_ADAPTER
  465. sizeof                     EQU *                    ; size:   $8 (8)
  466.                         ENDR
  467. SSGetStatusPB            RECORD 0
  468. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  469. socket                     ds.w    1                ; offset: $2 (2)        ;     SS_SOCKET
  470. cardState                 ds.b    1                ; offset: $4 (4)        ;     SS_FLAGS8
  471. socketState                 ds.b    1                ; offset: $5 (5)        ;     SS_FLAGS8
  472. ctlInd                     ds.b    1                ; offset: $6 (6)        ;     SS_FLAGS8
  473. ireqRouting                 ds.b    1                ; offset: $7 (7)        ;     SS_IRQ
  474. ifType                     ds.b    1                ; offset: $8 (8)        ;     SS_FLAGS8
  475. padding                     ds.b    1                ; offset: $9 (9) <-- really an array of length one ;     
  476. sizeof                     EQU *                    ; size:   $A (10)
  477.                         ENDR
  478. SSGetVendorInfoPB        RECORD 0
  479. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  480. vendorInfoType             ds.b    1                ; offset: $2 (2)        ;     SS_BYTE
  481. reserved                 ds.b    1                ; offset: $3 (3)        ;     padding
  482. buffer                     ds.l    1                ; offset: $4 (4)        ;     SS_PTR
  483. release                     ds.w    1                ; offset: $8 (8)        ;     SS_BCD
  484. sizeof                     EQU *                    ; size:   $A (10)
  485.                         ENDR
  486. SSInquireAdapterPB        RECORD 0
  487. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  488. buffer                     ds.l    1                ; offset: $2 (2)        ;     SS_PTR
  489. numSockets                 ds.w    1                ; offset: $6 (6)        ;     SS_COUNT
  490. numWindows                 ds.w    1                ; offset: $8 (8)        ;     SS_COUNT
  491. numEDCs                     ds.w    1                ; offset: $A (10)        ;     SS_COUNT
  492. sizeof                     EQU *                    ; size:   $C (12)
  493.                         ENDR
  494. SSInquireEDCPB            RECORD 0
  495. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  496. edc                         ds.w    1                ; offset: $2 (2)        ;     SS_EDC
  497. sockets                     ds.w    1                ; offset: $4 (4)        ;     SS_SKTBITS
  498. caps                     ds.b    1                ; offset: $6 (6)        ;     SS_FLAGS8
  499. types                     ds.b    1                ; offset: $7 (7)        ;     SS_FLAGS8
  500. sizeof                     EQU *                    ; size:   $8 (8)
  501.                         ENDR
  502. SSInquireSocketPB        RECORD 0
  503. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  504. socket                     ds.w    1                ; offset: $2 (2)        ;     SS_SOCKET
  505. buffer                     ds.l    1                ; offset: $4 (4)        ;     SS_PTR
  506. scIntCaps                 ds.b    1                ; offset: $8 (8)        ;     SS_FLAGS8
  507. scRptCaps                 ds.b    1                ; offset: $9 (9)        ;     SS_FLAGS8
  508. ctlIndCaps                 ds.b    1                ; offset: $A (10)        ;     SS_FLAGS8
  509. padding                     ds.b    1                ; offset: $B (11) <-- really an array of length one ;     
  510. sizeof                     EQU *                    ; size:   $C (12)
  511.                         ENDR
  512. SSInquireWindowPB        RECORD 0
  513. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  514. window                     ds.w    1                ; offset: $2 (2)        ;     SS_WINDOW
  515. buffer                     ds.l    1                ; offset: $4 (4)        ;     SS_PTR
  516. wndCaps                     ds.b    1                ; offset: $8 (8)        ;     SS_FLAGS8
  517. reserved                 ds.b    1                ; offset: $9 (9)        ;     padding
  518. sockets                     ds.w    1                ; offset: $A (10)        ;     SS_SKTBITS
  519. sizeof                     EQU *                    ; size:   $C (12)
  520.                         ENDR
  521. SSPauseEDCPB            RECORD 0
  522. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  523. edc                         ds.w    1                ; offset: $2 (2)        ;     SS_EDC
  524. sizeof                     EQU *                    ; size:   $4 (4)
  525.                         ENDR
  526. SSReadEDCPB                RECORD 0
  527. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  528. edc                         ds.w    1                ; offset: $2 (2)        ;     SS_EDC
  529. value                     ds.w    1                ; offset: $4 (4)        ;     SS_WORD
  530. sizeof                     EQU *                    ; size:   $6 (6)
  531.                         ENDR
  532. SSResetSocketPB            RECORD 0
  533. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  534. socket                     ds.w    1                ; offset: $2 (2)        ;     SS_SOCKET
  535. sizeof                     EQU *                    ; size:   $4 (4)
  536.                         ENDR
  537. SSResumeEDCPB            RECORD 0
  538. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  539. edc                         ds.w    1                ; offset: $2 (2)        ;     SS_EDC
  540. sizeof                     EQU *                    ; size:   $4 (4)
  541.                         ENDR
  542. SSStartEDCPB            RECORD 0
  543. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  544. edc                         ds.w    1                ; offset: $2 (2)        ;     SS_EDC
  545. sizeof                     EQU *                    ; size:   $4 (4)
  546.                         ENDR
  547. SSStopEDCPB                RECORD 0
  548. adapter                     ds.w    1                ; offset: $0 (0)        ;     SS_ADAPTER
  549. edc                         ds.w    1                ; offset: $2 (2)        ;     SS_EDC
  550. sizeof                     EQU *                    ; size:   $4 (4)
  551.                         ENDR
  552. SSVendorSpecificPB        RECORD 0
  553. vsFunction                 ds.w    1                ; offset: $0 (0)        ;     SS_WORD
  554. adapter                     ds.w    1                ; offset: $2 (2)        ;     SS_ADAPTER
  555. socket                     ds.w    1                ; offset: $4 (4)        ;     SS_SOCKET
  556. bufferSize                 ds.w    1                ; offset: $6 (6)        ;     SS_WORD
  557. buffer                     ds.l    1                ; offset: $8 (8)        ;     SS_PTR
  558. attributes                 ds.l    1                ; offset: $C (12)        ;     SS_LONG
  559. sizeof                     EQU *                    ; size:   $10 (16)
  560.                         ENDR
  561. ;     `attributes' constants 
  562.  
  563. kSSGoingToSleep                    EQU        $00000001
  564. kSSWakingFromSleep                EQU        $00000002
  565. ;
  566. ;------------------------------------------------------------------------------------------------------------------------------------------------
  567. ;    Non-specific Socket Services Functions
  568. ;------------------------------------------------------------------------------------------------------------------------------------------------
  569. ;
  570. ;
  571. ; pascal SS_RETCODE SSGetAdapterCount(SSGetAdapterCountPB *pb, Ptr dataPtr)
  572. ;
  573.     IF GENERATINGCFM THEN
  574.         IMPORT_CFM_FUNCTION SSGetAdapterCount
  575.     ENDIF
  576.  
  577. ;
  578. ;------------------------------------------------------------------------------------------------------------------------------------------------
  579. ;    Adapter Functions
  580. ;------------------------------------------------------------------------------------------------------------------------------------------------
  581. ;
  582. ;
  583. ; pascal SS_RETCODE SSAcknowledgeInterrupt(SSAcknowledgeInterruptPB *pb, Ptr dataPtr)
  584. ;
  585.     IF GENERATINGCFM THEN
  586.         IMPORT_CFM_FUNCTION SSAcknowledgeInterrupt
  587.     ENDIF
  588.  
  589. ;
  590. ; pascal SS_RETCODE SSGetSetPriorHandler(SSGetSetPriorHandlerPB *pb, Ptr dataPtr)
  591. ;
  592.     IF GENERATINGCFM THEN
  593.         IMPORT_CFM_FUNCTION SSGetSetPriorHandler
  594.     ENDIF
  595.  
  596. ;
  597. ; pascal SS_RETCODE SSGetSetSSAddr(SSGetSetSSAddrPB *pb, Ptr dataPtr)
  598. ;
  599.     IF GENERATINGCFM THEN
  600.         IMPORT_CFM_FUNCTION SSGetSetSSAddr
  601.     ENDIF
  602.  
  603. ;
  604. ; pascal SS_RETCODE SSGetAccessOffsets(SSGetAccessOffsetsPB *pb, Ptr dataPtr)
  605. ;
  606.     IF GENERATINGCFM THEN
  607.         IMPORT_CFM_FUNCTION SSGetAccessOffsets
  608.     ENDIF
  609.  
  610. ;
  611. ; pascal SS_RETCODE SSGetAdapter(SSGetSetAdapterPB *pb, Ptr dataPtr)
  612. ;
  613.     IF GENERATINGCFM THEN
  614.         IMPORT_CFM_FUNCTION SSGetAdapter
  615.     ENDIF
  616.  
  617. ;
  618. ; pascal SS_RETCODE SSGetSSInfo(SSGetSSInfoPB *pb, Ptr dataPtr)
  619. ;
  620.     IF GENERATINGCFM THEN
  621.         IMPORT_CFM_FUNCTION SSGetSSInfo
  622.     ENDIF
  623.  
  624. ;
  625. ; pascal SS_RETCODE SSGetVendorInfo(SSGetVendorInfoPB *pb, Ptr dataPtr)
  626. ;
  627.     IF GENERATINGCFM THEN
  628.         IMPORT_CFM_FUNCTION SSGetVendorInfo
  629.     ENDIF
  630.  
  631. ;
  632. ; pascal SS_RETCODE SSInquireAdapter(SSInquireAdapterPB *pb, Ptr dataPtr)
  633. ;
  634.     IF GENERATINGCFM THEN
  635.         IMPORT_CFM_FUNCTION SSInquireAdapter
  636.     ENDIF
  637.  
  638. ;
  639. ; pascal SS_RETCODE SSSetAdapter(SSGetSetAdapterPB *pb, Ptr dataPtr)
  640. ;
  641.     IF GENERATINGCFM THEN
  642.         IMPORT_CFM_FUNCTION SSSetAdapter
  643.     ENDIF
  644.  
  645. ;
  646. ; pascal SS_RETCODE SSVendorSpecific(SSVendorSpecificPB *pb, Ptr dataPtr)
  647. ;
  648.     IF GENERATINGCFM THEN
  649.         IMPORT_CFM_FUNCTION SSVendorSpecific
  650.     ENDIF
  651.  
  652. ;
  653. ;------------------------------------------------------------------------------------------------------------------------------------------------
  654. ;    Socket Functions
  655. ;------------------------------------------------------------------------------------------------------------------------------------------------
  656. ;
  657. ;
  658. ; pascal SS_RETCODE SSGetSocket(SSGetSetSocketPB *pb, Ptr dataPtr)
  659. ;
  660.     IF GENERATINGCFM THEN
  661.         IMPORT_CFM_FUNCTION SSGetSocket
  662.     ENDIF
  663.  
  664. ;
  665. ; pascal SS_RETCODE SSGetStatus(SSGetStatusPB *pb, Ptr dataPtr)
  666. ;
  667.     IF GENERATINGCFM THEN
  668.         IMPORT_CFM_FUNCTION SSGetStatus
  669.     ENDIF
  670.  
  671. ;
  672. ; pascal SS_RETCODE SSInquireSocket(SSInquireSocketPB *pb, Ptr dataPtr)
  673. ;
  674.     IF GENERATINGCFM THEN
  675.         IMPORT_CFM_FUNCTION SSInquireSocket
  676.     ENDIF
  677.  
  678. ;
  679. ; pascal SS_RETCODE SSResetSocket(SSResetSocketPB *pb, Ptr dataPtr)
  680. ;
  681.     IF GENERATINGCFM THEN
  682.         IMPORT_CFM_FUNCTION SSResetSocket
  683.     ENDIF
  684.  
  685. ;
  686. ; pascal SS_RETCODE SSSetSocket(SSGetSetSocketPB *pb, Ptr dataPtr)
  687. ;
  688.     IF GENERATINGCFM THEN
  689.         IMPORT_CFM_FUNCTION SSSetSocket
  690.     ENDIF
  691.  
  692. ;
  693. ;------------------------------------------------------------------------------------------------------------------------------------------------
  694. ;    Window Functions
  695. ;------------------------------------------------------------------------------------------------------------------------------------------------
  696. ;
  697. ;
  698. ; pascal SS_RETCODE SSGetPage(SSGetSetPagePB *pb, Ptr dataPtr)
  699. ;
  700.     IF GENERATINGCFM THEN
  701.         IMPORT_CFM_FUNCTION SSGetPage
  702.     ENDIF
  703.  
  704. ;
  705. ; pascal SS_RETCODE SSGetWindow(SSGetSetWindowPB *pb, Ptr dataPtr)
  706. ;
  707.     IF GENERATINGCFM THEN
  708.         IMPORT_CFM_FUNCTION SSGetWindow
  709.     ENDIF
  710.  
  711. ;
  712. ; pascal SS_RETCODE SSInquireWindow(SSInquireWindowPB *pb, Ptr dataPtr)
  713. ;
  714.     IF GENERATINGCFM THEN
  715.         IMPORT_CFM_FUNCTION SSInquireWindow
  716.     ENDIF
  717.  
  718. ;
  719. ; pascal SS_RETCODE SSSetPage(SSGetSetPagePB *pb, Ptr dataPtr)
  720. ;
  721.     IF GENERATINGCFM THEN
  722.         IMPORT_CFM_FUNCTION SSSetPage
  723.     ENDIF
  724.  
  725. ;
  726. ; pascal SS_RETCODE SSSetWindow(SSGetSetWindowPB *pb, Ptr dataPtr)
  727. ;
  728.     IF GENERATINGCFM THEN
  729.         IMPORT_CFM_FUNCTION SSSetWindow
  730.     ENDIF
  731.  
  732. ;
  733. ;------------------------------------------------------------------------------------------------------------------------------------------------
  734. ;    Error Detection Functions
  735. ;------------------------------------------------------------------------------------------------------------------------------------------------
  736. ;
  737. ;
  738. ; pascal SS_RETCODE SSGetEDC(SSGetSetEDCPB *pb, Ptr dataPtr)
  739. ;
  740.     IF GENERATINGCFM THEN
  741.         IMPORT_CFM_FUNCTION SSGetEDC
  742.     ENDIF
  743.  
  744. ;
  745. ; pascal SS_RETCODE SSInquireEDC(SSInquireEDCPB *pb, Ptr dataPtr)
  746. ;
  747.     IF GENERATINGCFM THEN
  748.         IMPORT_CFM_FUNCTION SSInquireEDC
  749.     ENDIF
  750.  
  751. ;
  752. ; pascal SS_RETCODE SSPauseEDC(SSPauseEDCPB *pb, Ptr dataPtr)
  753. ;
  754.     IF GENERATINGCFM THEN
  755.         IMPORT_CFM_FUNCTION SSPauseEDC
  756.     ENDIF
  757.  
  758. ;
  759. ; pascal SS_RETCODE SSReadEDC(SSReadEDCPB *pb, Ptr dataPtr)
  760. ;
  761.     IF GENERATINGCFM THEN
  762.         IMPORT_CFM_FUNCTION SSReadEDC
  763.     ENDIF
  764.  
  765. ;
  766. ; pascal SS_RETCODE SSResumeEDC(SSResumeEDCPB *pb, Ptr dataPtr)
  767. ;
  768.     IF GENERATINGCFM THEN
  769.         IMPORT_CFM_FUNCTION SSResumeEDC
  770.     ENDIF
  771.  
  772. ;
  773. ; pascal SS_RETCODE SSSetEDC(SSGetSetEDCPB *pb, Ptr dataPtr)
  774. ;
  775.     IF GENERATINGCFM THEN
  776.         IMPORT_CFM_FUNCTION SSSetEDC
  777.     ENDIF
  778.  
  779. ;
  780. ; pascal SS_RETCODE SSStartEDC(SSStartEDCPB *pb, Ptr dataPtr)
  781. ;
  782.     IF GENERATINGCFM THEN
  783.         IMPORT_CFM_FUNCTION SSStartEDC
  784.     ENDIF
  785.  
  786. ;
  787. ; pascal SS_RETCODE SSStopEDC(SSStopEDCPB *pb, Ptr dataPtr)
  788. ;
  789.     IF GENERATINGCFM THEN
  790.         IMPORT_CFM_FUNCTION SSStopEDC
  791.     ENDIF
  792.  
  793.     ENDIF
  794.     ENDIF ; __SOCKETSERVICES__ 
  795.  
  796.